在 Vue 3 裡,Composition API 就像是把程式邏輯收納到「資料艙」裡,不再零散放在各個 Options(data、methods、computed…)。
優點是:邏輯集中、可重複使用、更好閱讀。
setup()
ref
.value
存取真實值。import { ref } from 'vue'
const fuel = ref(100) // 初始燃料
fuel.value-- // 消耗燃料
reactive
import { reactive } from 'vue'
const ship = reactive({
name: 'Voyager',
hp: 100,
shield: true
})
computed
import { computed } from 'vue'
const speed = computed(() => distance.value / time.value)
watch
import { watch } from 'vue'
watch(fuel, (newVal) => {
if (newVal < 20) alert('⚠️ 燃料快耗盡!')
})
import { onMounted, onUnmounted } from 'vue'
onMounted(() => {
console.log('🚀 星艦啟動')
})
onUnmounted(() => {
console.log('🛬 星艦返航')
})
ref
→ 單一值,響應式。reactive
→ 物件集合,響應式。computed
→ 自動計算。watch
→ 偵測並觸發動作。參考資源
https://vuejs.org/guide
https://www.runoob.com/vue3